]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
background: don't use raise_top() since it's costly
authorRay Strode <rstrode@redhat.com>
Tue, 5 Mar 2013 20:39:29 +0000 (15:39 -0500)
committerRay Strode <rstrode@redhat.com>
Tue, 5 Mar 2013 21:03:12 +0000 (16:03 -0500)
We currently resync the stacking order of the two key frames
every iteration of the animation.  This is costly and unnecessary.

This commit ensures they're stacked properly up front and doesn't
touch them after that.

https://bugzilla.gnome.org/show_bug.cgi?id=694993

js/ui/background.js

index 74e398eb3e9fe8eafc9ef828bc2ff4f3774e27bb..6d6089b5cb6c2bc0d58c8837c465fd4e8e90f1c6 100644 (file)
@@ -356,7 +356,7 @@ const Background = new Lang.Class({
 
         let actor = new Meta.BackgroundActor();
         actor.content = content;
-        this.actor.add_child(actor);
+        this.actor.insert_child_at_index(actor, index);
 
         this._images[index] = actor;
         this._watchCacheFile(filename);
@@ -372,10 +372,8 @@ const Background = new Lang.Class({
     },
 
     _updateAnimationProgress: function() {
-        if (this._images[1]) {
-            this._images[1].raise_top();
+        if (this._images[1])
             this._images[1].opacity = this._animation.transitionProgress * 255;
-        }
 
         this._queueAnimationUpdate();
     },